package com.example.mybatisplus.tag.dao;

import com.example.mybatisplus.tag.domain.User;
import com.example.mybatisplus.tag.domain.UserInfo;

import java.util.List;
import java.util.Map;

/**
 * @Author longdeng
 * @Date 2020/9/21 0021 20:42
 */
public interface MybatisTagMapper {

    /**
     * 查询信息
     *
     * @return
     */
    List<UserInfo> resultMap();

    /**
     * if+where标签的使用
     *
     * @param map
     * @return
     */
    List<User> ifTag(Map<String, Object> map);

    /**
     * foreach标签
     *
     * @param list
     * @return
     */
    List<User> foreachTag(List<String> list);

    /**
     * choose标签
     *
     * @param map
     * @return
     */
    List<User> chooseTag(Map<String, Object> map);

    /**
     * @param map
     * @return
     */
    int setTag(Map<String, Object> map);

    /**
     * trim标签的测试使用
     *
     * @param map
     * @return
     */
    List<User> trimTag(Map<String, Object> map);

    /**
     * include标签测使用
     *
     * @param map
     * @return
     */
    List<User> includeTag(Map<String, Object> map);

    /**
     * 添加用户信息到数据库中
     *
     * @param userList
     */
    void addUsers(List<User> userList);
}
